﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ParticeInClass
{
    internal class MimicStack
    {
       
        public int Stored { get; private set; }// 存储的元素数量        
        public int Empty { get; private set; }// 空栈的元素数量

        public int[] depth { get; private set; } //数组

        public int top; // 栈顶元素的索引
        public int bottom = 0;// 栈底元素的索引

        public MimicStack(int value)
        {
            this.depth = new int[value];
            Empty = depth.Length;
        }

        public void Push(int value)
        {
            if (top < depth.Length)
            {
                depth[top] = value;

                top++; // 更新栈顶索引
                Stored++;// 更新存储的元素数量
                Empty--; // 更新空栈的元素数量

            }
            else
            {
                Console.WriteLine("栈已满");
            }
        }

        public void pop()
        {
            if (top > 0)
            {
                depth[top-1] = 0;

                top--; // 更新栈顶索引l
                Stored--;// 更新存储的元素数量
                Empty++; // 更新空栈的元素数量
            }
            else
            {
                Console.WriteLine("栈已空");
            }
        }
    }
}
